namespace java.swift net.gdface.sdk.fse.decorator
namespace cpp gdface
namespace java net.gdface.sdk.fse.thrift.client
namespace py gdface.thrift



exception ServiceRuntimeException {
  1: optional string message;
  2: optional string causeClass;
  3: optional string serviceStackTraceMessage;
  4: optional string causeFields;
  5: required i32 type;
}

struct CodeBean {
  1: optional binary code;
  2: required i32 group;
  3: optional binary id;
  4: optional string imgMD5;
  5: required double similarity;
}

service FeatureSe {
  bool addFeatureToFse(1: optional binary featureId, 2: optional binary feature, 3: optional string imgMD5, 4: required i32 group) throws (1: ServiceRuntimeException ex1);
  bool addFeatureToFseWithAppId(1: optional binary featureId, 2: optional binary feature, 3: required i64 appid, 4: required i32 group) throws (1: ServiceRuntimeException ex1);
  void clearAllOfFse() throws (1: ServiceRuntimeException ex1);
  CodeBean getFeatureByHexFromFse(1: optional string featureId) throws (1: ServiceRuntimeException ex1);
  CodeBean getFeatureFromFse(1: optional binary featureId) throws (1: ServiceRuntimeException ex1);
  bool removeFeatureByHexFromFse(1: optional string featureId) throws (1: ServiceRuntimeException ex1);
  bool removeFeatureFromFse(1: optional binary featureId) throws (1: ServiceRuntimeException ex1);
  list<CodeBean> searchCodeFromFse(1: optional binary code, 2: required double sim, 3: required i32 rows, 4: optional list<string> imgMD5Set, 5: required i32 group) throws (1: ServiceRuntimeException ex1);
  i32 sizeOfFse() throws (1: ServiceRuntimeException ex1);
  bool updateGroup(1: optional binary featureId, 2: required i32 group) throws (1: ServiceRuntimeException ex1);
}
